char int_to_char(int, int);






/*partie machine */


typedef struct Rotor_intern Rotor_intern;
struct Rotor_intern
{

	int* sorties; /* tableau de 26 entrées, la première valeur correspond à la sortie de la lettre a etc...*/
	int encoche; /* quelle est la position du rotor qui entraine la rotation du suivant */
};


typedef struct Reflecteur Reflecteur;
struct Reflecteur{

	int* sorties;
};


typedef struct Plugboard Plugboard;
struct Plugboard{

	int** connexions; /* il y a dix fils, donc dix paires de lettres, tableau? structure spécifique?*/
};





int traitement(Rotor_intern*,Rotor_intern*,Rotor_intern*,Reflecteur*,Plugboard*,int*,int*,int*,int,int);
void mouvement_rotors(Rotor_intern*,Rotor_intern*,Rotor_intern*,int*,int*,int*);
int appartient_permutation(int,int**,int,int);
void decaler_rotor(Rotor_intern*);
